草庐IT

c++ - QML Qt openUrlExternally

全部标签

c++ - 从可执行文件中找出编译优化标志

这里我有一个可执行文件,不知道它的构建环境,假设使用的是gcc/g++。有没有办法找出编译期间使用的优化标志(如O0、O2等)?欢迎使用所有方法,无论是通过分析二进制文件还是通过gdb进行调试测试(如果我们假设-g标志在编译期间可用)。 最佳答案 如果幸运的话,命令行会出现在可执行文件本身中,具体取决于所使用的操作系统和文件格式。如果它是Elf文件,请尝试使用来自GNUbinutils的objdump转储内容 关于c++-从可执行文件中找出编译优化标志,我们在StackOverflow上

c++ - 扩展精度浮点库 C/C++

我正在寻找具有以下特性的扩展精度浮点库:固定数据类型大小(即扩展精度float占用固定数量的内存)变量不需要初始化指定尾数和指数的大小C/C++接口(interface)支持非常大的float>10^10000我能找到的最接近的是IvanoPrimi的HPA库。这个库的唯一问题是我无法扩展指数(它固定为15位)。它允许我对尾数进行多种选择,但可表示的最大数字始终限于10^4932。GMP等其他库需要初始化并且不允许固定大小的数据类型。关键是我不需要任意精度,而只是扩展。但我需要有非常大的指数。感谢您的帮助!标记 最佳答案 似乎ttm

c++ - CUDA素数生成

随着数据大小增加超过260k,我的CUDA程序停止工作(它不打印任何内容)。有人能告诉我为什么会这样吗?这是我的第一个CUDA程序。如果我想要更大的素数,如何在CUDA上使用大于longlongint的数据类型?显卡为GT425M。#include#include#include#defineSIZE250000#defineBLOCK_NUM96#defineTHREAD_NUM1024intdata[SIZE];__global__staticvoidsieve(int*num,clock_t*time){constinttid=threadIdx.x;constintbid=bl

c++ - 强制一个符号到 ELF 文件的顶部

在我们通过GCC链接器生成的ELF文件中,ELF文件的顶部始终是可执行代码的版本标识符。这是通过创建version.c文件并使生成的目标文件成为链接命令中的第一个可链接对象来实现的。然而,对于一个可执行文件,这无法正常工作,我们可以发现的唯一区别是可执行文件包含C和C++代码的混合,并且版本符号被重新定位到其他地方。因此,问题是有没有一种方法可以保证符号在ELF文件中的绝对位置,以便通过链接器命令或代码属性指令,符号始终位于文件的顶部? 最佳答案 您可以通过脚本控制链接器的输出。在您的情况下,您可以检查:https://source

c++ - 在什么平台上 memmove 和 memcpy 会有显着的性能差异?

我知道memmove和memcpy的区别在于memmove处理内存重叠情况。我检查了libgcc中的实现并得到了这篇文章[memcpyperformance]来自英特尔网站。在libgcc中,memmove类似于memcpy,都是一个字节一个字节地走,所以即使经过优化,性能应该也差不多。有人测过这个得到这篇文章memcopy,memmove,andSpeedoverSafety.即使我不认为memmove可以比memcpy更快,但至少在Intel平台上应该没有太大区别。那么在什么平台上以及如何,memcpy可以比memmove快得多,如果没有,为什么要提供两个类似的函数而不是仅仅mem

c# - c#如何在asp.net网页中显示C程序错误

我正在创建在线编译器应用程序。我已经使用C#.net和VB.net成功创建了。但是当我尝试使用C和C++时,我不知道如何在asp.net网页中显示错误。下面只显示错误,不显示错误在代码中的位置Processproc=newProcess();proc.StartInfo.FileName=Session[batchPath].ToString();proc.StartInfo.RedirectStandardError=true;proc.StartInfo.RedirectStandardOutput=true;proc.StartInfo.UseShellExecute=false

c++ - 什么是执行宽字符集及其编码?

标准中提到了很多与字符集相关的概念:基本源字符集、基本执行字符集、基本执行宽字符集、执行字符集、执行宽字符集:基本源字符集:91个图形字符,加上空格字符、HT、VT、FF、LF(只是借用了ASCII的名称缩写)。基本执行(宽)字符集:基本源字符集的所有成员,加上BEL、BS、CR、(宽)NUL。执行字符集和执行宽字符集分别是基本执行字符集和基本执行宽字符集的实现定义超集。执行字符集成员的值和附加成员集是特定于语言环境的。我对基本源字符集、基本执行字符集和基本执行宽字符集没有太多疑问。至于执行字符集,标准说它是实现定义的和特定于语言环境的,所以我试图通过观察字符串文字初始化的char数组

c++ - float1 与 CUDA 中的 float

我注意到cuda中有一个float1结构类型。与简单的float相比,是否有任何性能优势,例如,在使用float数组与float1数组的情况下?struct__device_builtin__float1{floatx;};在float4中有一个性能优势,这取决于场合,因为对齐是4x4bytes=16bytes。是否仅用于带有float1参数的__device__函数?提前致谢。 最佳答案 关注@talonmies对帖子的评论CUDAThrustreductionwithdouble2arrays,我比较了使用CUDAThrust计

java - 如何用 Java 或 C 监视/采样输出音频?

最近我一直在尝试对我在计算机上播放的音频进行实时可视化(通过任何任意程序,例如Spotify),但我一直在使用SoundFlower将输出音频传输到假线路中。我想知道是否有一种C/C++或Java原生的方法可以让我以类似的方式捕获发送到我的计算机(我使用的是Mac)线路的任何音频我如何捕获一行(即不断填充PCM数据的示例缓冲区)。除了读取线路输出数据外,我不想模拟SoundFlower的其他功能。 最佳答案 我建议查看WavTap的源代码,SoundFlower的一个分支,它只专注于捕获系统的默认音频输出。SoundFlower和W

c++ - 加速 Matlab 引擎调用

我正在使用MATLABEngineAPI将MATLAB与C/C++连接起来.在我的特殊情况下,MATLAB用于计算某些东西,结果以C语言打印。但是,在双方的各种测试中,我注意到C语言的显着性能损失。这是MATLAB函数调用的示例:tic;data=predictIM(data);toc;在C端我调用类似的函数如下:iMod::Timer_Tt;engPutVariable(ep,"data",dataContent);engEvalString(ep,"[posture]=predictIM(data);");UT_NOTIFY(LV_DEBUG,"Theexecutiontook"我